
/**
 * 单例设计模式-饿汉
 *
 * @author weiZhiLin
 * @version 1.0
 * @date 2019/12/26 14:31
 */
public class Singleton {
    // 线程安全 但是直接实例化的方式也丢失了延迟实例化带来的节约资源的好处。
    public Singleton() {
    }

    private static Singleton singleton = new Singleton();

    public static Singleton getInstance() {
        return singleton;
    }

    // 另一种写法，线程不安全
    private static Singleton singleton_other = null;

    static {
        singleton_other = new Singleton();
    }

    public static Singleton getInstance2() {
        if (singleton_other == null) {
            singleton_other=new Singleton();
        }
        return singleton_other;
    }
}
